// src/api/role.js
import request from '@/utils/request'

// 获取角色列表（分页）
export function getRoleList(params) {
    return request({
        url: '/role/list',
        method: 'get',
        params
    })
}

// 获取所有角色
export function getAllRoles() {
    return request({
        url: '/role/all',
        method: 'get'
    })
}

// 获取角色详情
export function getRoleById(id) {
    return request({
        url: `/role/${id}`,
        method: 'get'
    })
}

// 添加角色
export function addRole(data) {
    return request({
        url: '/role',
        method: 'post',
        data
    })
}

// 更新角色
export function updateRole(id, data) {
    return request({
        url: `/role/${id}`,
        method: 'put',
        data
    })
}

// 删除角色
export function deleteRole(id) {
    return request({
        url: `/role/${id}`,
        method: 'delete'
    })
}

// 更新角色状态
export function updateRoleStatus(id, status) {
    return request({
        url: `/role/${id}/status`,
        method: 'put',
        params: { status }
    })
}

// 分配权限
export function assignPermissions(roleId, permissionIds) {
    return request({
        url: `/role/${roleId}/permissions`,
        method: 'post',
        data: { permissionIds }
    })
}

// 获取角色的权限列表
export function getRolePermissions(roleId) {
    return request({
        url: `/role/${roleId}/permissions`,
        method: 'get'
    })
}